    <footer class="site-footer">

      {% include footer-ad.html %}

      <div class="contact">
        <ul class="left">
          <a href="{{ site.github.repository_url }}" target="_blank" aria-label="view source code">
            <span class="mega-octicon octicon-mark-github" title="GitHub"></span>
          </a>
          <a class="rss" href="{{ site.url }}{{ site.subscribe_rss }}">
            <span class="octicon octicon-rss" title="Subscribe"></span>
          </a>
        </ul>
        <ul class="right">
          <a href="javascript:window.scrollTo(0,0)" class="toTop" title="Scroll to top">TOP</a>
        </ul>
      </div>

      <div class="footer" role="contentinfo">
        <div class="copyright left">
          © {{ site.since }}
          <span title="{{ site.author }}">{{ site.author }}</span>
        </div>

        <div class="right text-align-right">
          <!-- <ul class="site-footer-links">
            {% for nav in site.navs %}
              <li>
                <a href="{{ site.url }}{{ nav.href }}" title="{{ nav.label }}" target="{{ nav.target | default: _self }}">{{ nav.label }}</a>
              </li>
            {% endfor %}
            <a class="rss" href="{{ site.url }}{{ site.subscribe_rss }}"><span class="octicon octicon-rss" style="color:orange;"></span></a>
          </ul> -->

          {% include visit-stat.html %}
        </div>
      </div>
    </footer>
    <div class="tools-wrapper mobile-hidden">
      <a class="gotop" href="#" title="回到顶部">
        <svg t="1574745035067" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5404" class="icon" data-v-c6073ba8=""><path d="M526.60727968 10.90185116a27.675 27.675 0 0 0-29.21455937 0c-131.36607665 82.28402758-218.69155461 228.01873535-218.69155402 394.07834331a462.20625001 462.20625001 0 0 0 5.36959153 69.94390903c1.00431239 6.55289093-0.34802892 13.13561351-3.76865779 18.80351572-32.63518765 54.11355614-51.75690182 118.55860487-51.7569018 187.94566865a371.06718723 371.06718723 0 0 0 11.50484808 91.98906777c6.53300375 25.50556257 41.68394495 28.14064038 52.69160883 4.22606766 17.37162448-37.73630017 42.14135425-72.50938081 72.80769204-103.21549295 2.18761121 3.04276886 4.15646224 6.24463696 6.40373557 9.22774369a1871.4375 1871.4375 0 0 0 140.04691725 5.34970492 1866.36093723 1866.36093723 0 0 0 140.04691723-5.34970492c2.24727335-2.98310674 4.21612437-6.18497483 6.3937923-9.2178004 30.66633723 30.70611158 55.4360664 65.4791928 72.80769147 103.21549355 11.00766384 23.91457269 46.15860503 21.27949489 52.69160879-4.22606768a371.15156223 371.15156223 0 0 0 11.514792-91.99901164c0-69.36717486-19.13165746-133.82216804-51.75690182-187.92578088-3.42062944-5.66790279-4.76302748-12.26056868-3.76865837-18.80351632a462.20625001 462.20625001 0 0 0 5.36959269-69.943909c-0.00994388-166.08943902-87.32547796-311.81420293-218.6915546-394.09823051zM605.93803103 357.87693858a93.93749974 93.93749974 0 1 1-187.89594924 6.1e-7 93.93749974 93.93749974 0 0 1 187.89594924-6.1e-7z" p-id="5405" data-v-c6073ba8=""></path><path d="M429.50777625 765.63860547C429.50777625 803.39355007 466.44236686 1000.39046097 512.00932183 1000.39046097c45.56695499 0 82.4922232-197.00623328 82.5015456-234.7518555 0-37.75494459-36.9345906-68.35043303-82.4922232-68.34111062-45.57627738-0.00932239-82.52019037 30.59548842-82.51086798 68.34111062z" p-id="5406" data-v-c6073ba8=""></path></svg>
      </a>
    </div>
    <!-- / footer -->
    {% if site.components.share.enabled %}
    <script src="{{ assets_base_url }}/assets/vendor/share.js/dist/js/share.min.js"></script>
    {% endif %}
    <script src="{{ assets_base_url }}/assets/js/geopattern.js"></script>
    <script>
      jQuery(document).ready(function($) {
        $('.geopattern').each(function(){
          $(this).geopattern($(this).data('pattern-id'));
        });
       /* hljs.initHighlightingOnLoad(); */
      });
    </script>

    <script>
      jQuery(document).ready(function($) {
        function setContainerStyle(){
          var footerH = $("footer").height();
          $('.site-container').css('paddingBottom', `${footerH + 50}px`);
        }
        setContainerStyle();
        $(window).resize(setContainerStyle());
      });
    </script>

    {% if page.mermaid %}
    <script src="{{ assets_base_url }}/assets/js/mermaid.min.js"></script>
    <script>mermaid.initialize({startOnLoad:true});</script>
    {% endif %}

    {% if page.sequence %}
    <script src="{{ assets_base_url }}/assets/js/webfont.js"></script>
    <script src="{{ assets_base_url }}/assets/js/snap.svg-min.js"></script>
    <script src="{{ assets_base_url }}/assets/js/underscore-umd-min.js"></script>
    <script src="{{ assets_base_url }}/assets/vendor/js-sequence-diagrams/dist/sequence-diagram-min.js"></script>
    <link rel="stylesheet" href="{{ assets_base_url }}/assets/vendor/js-sequence-diagrams/dist/sequence-diagram-min.css">
    <script>
      $(".language-sequence").sequenceDiagram({theme: 'simple'});
    </script>
    {% endif %}

    {% if page.flow %}
    <script src="{{ assets_base_url }}/assets/js/raphael.min.js"></script>
    <script src="{{ assets_base_url }}/assets/vendor/flowchart.js/dist/flowchart.min.js"></script>
    <script src="{{ assets_base_url }}/assets/js/flow.js"></script>
    {% endif %}

    {% if page.mathjax %}
    <script type="text/javascript" src="https://cdn.jsdelivr.net/gh/mathjax/MathJax@2.7.5/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
    {% endif %}

    {% if page.mindmap %}
      <link rel="stylesheet" href="{{ assets_base_url }}/assets/css/mindmap/index.css">
      <script type="text/javascript" src="{{ assets_base_url }}/assets/js/kity.min.js"></script>
      <script type="text/javascript" src="{{ assets_base_url }}/assets/js/kityminder.core.min.js"></script>
      <script>
        $(document).ready(function(){
          $('.language-mindmap').each(function(index, element) {
            var markdownText = element.textContent.trim();
            var parentNode = element.parentNode.parentNode;
            var nodeName = '.language-mindmap-' + index;
            var node = document.createElement("div");
            node.className = 'language-mindmap-' + index;
            node.style.height = '' + $(element).height() + 'px';
            parentNode.insertBefore(node, element.parentNode);
            var minder = new kityminder.Minder({
              renderTo: nodeName
            });
            minder.importData('markdown', markdownText);
            /* minder.disable(); */
            minder.execCommand('hand');

            var viewerTipNode = document.createElement("a");
            viewerTipNode.setAttribute('href', '{{ site.url }}/mindmap-viewer/?data=' + encodeURIComponent(markdownText));
            viewerTipNode.setAttribute('target', '_blank');
            viewerTipNode.setAttribute('style', 'font-size:0.8rem;font-style:italic;font-color:grey;');
            viewerTipNode.innerText = '全屏查看';
            parentNode.insertBefore(viewerTipNode, element.parentNode);

            element.parentNode.style.display = 'none';

            {% if page.mindmap-template %}
              setTimeout(function() {
                minder.setTemplate('{{ page.mindmap-template }}');
                minder.refresh();
              }, 100);
            {% endif %}
          });
        });
      </script>
    {% endif %}

    {% if site.google.analytics_id %}
      <div style="display:none">
        <script>
          (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
          (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
          m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
          })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

          ga('create', '{{ site.google.analytics_id }}', 'auto');
          ga('send', 'pageview');

        </script>
      </div>
    {% endif %}
  </body>
</html>
